Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Split game lobby into casual/competitive rooms #1215

Merged
merged 9 commits into from
Feb 14, 2016
Merged

Conversation

zaroth
Copy link
Collaborator

@zaroth zaroth commented Feb 11, 2016

Fact: platform is often pushing over 100 games at peak times currently and the game list gets pretty long sometimes. A some way of splitting that would be nice.

To do that, and to help players that are having mismatched expectations when coming into the game, lo and behold, a competitive room (for the beginning, it's super easy to add more):

http://i.share.pho.to/b1549035_o.png

If we want to do that, creating custom rooms using this logic would be trivial - just allow the room name to be a text field. That is a sort-of replacement for passworded games ;-)

Could be enhanced by merging #1047, so we finally have user profiles and user could select their default lobby in their profile. Currently the default is the casual room.

Since there are changes to server.coffee, its restart will be needed.

Fixes #345 (kind of).

@zaroth
Copy link
Collaborator Author

zaroth commented Feb 11, 2016

The concept of having games separated by skill using rooms kind of obsoletes #755 IMHO, although I'll leave the decision up to others.

@zaroth
Copy link
Collaborator Author

zaroth commented Feb 12, 2016

Changed usage of 'lobby' to more correct 'room', since arguably lobby is a collection of rooms in this case. Also the tests failing are irrelevant, there are no changes to tested stuff in this PR. CLJS isn't tested.

@zaroth zaroth force-pushed the newlobby branch 2 times, most recently from d9aacea to 1f0f1a1 Compare February 12, 2016 15:40
@zaroth
Copy link
Collaborator Author

zaroth commented Feb 12, 2016

as per @mtgred suggestion, replaced select with tabs: http://i.share.pho.to/3b18e7e0_o.png

@mtgred
Copy link
Owner

mtgred commented Feb 12, 2016

It's better to have tabs instead of a select box: 1 click instead of 2 and you directly see all the options instead of hiding them.

A split based a "competitive" label isn't very meaningful. Anyone can just join a "competitive" game with jank.

What should be done is ranked and unranked games. The ranked games should count toward an ELO rating, with a player profile page and a leaderboard. When there is a stake, people won't play with jank. It's basically what's happening with the Stimhack League. It's the same with play money poker vs real money poker.

Jinteki.net is modelled after Battle.net. In the old Battle.net for Warcraft 2 and Starcraft 1, players create a ranked game and anyone can join them. The problem with that approach is people can game the system by creating fake account to play against their main account. An auto matchmaking has been introduced in Battle.net for ranked games in Warcraft 3 and Starcraft 2. This prevents people from playing against fake accounts and it allows players to play with other people of around the same level. So beginners or people wanting to play with jank can still enjoy ranked games and will be matched against people of their level. And strong players will have challenging games.

The main problem with ranked games on jinteki.net is to determine the winner. There might be rule disputes and there's no way to automatically determine the winner in case of a disagreement.

I was thinking about tournaments as a solution. People would register with deck lists and play swiss rounds like a tournament in real life. There would be a judge present during the tournament to resolve disputes. Dan also wanted to organise tournament on Jinteki.net so the organisation could be in collaboration with the Stimhack crew.

@zaroth
Copy link
Collaborator Author

zaroth commented Feb 12, 2016

Select vs tabs: good point, I replaced that: http://i.share.pho.to/3b18e7e0_o.png .

As I replied in the discussion, a ranked system is a nice goal, but we're not quite there yet and the room split is a nice solution to help players with similar expectations to find each other. Obviously, a jank player can join a competitive room. But will he want to, knowing that he will just get beaten over and over by Fastro and DLR? Probably not, he's more likely to stay in the Casual room, where he can win more often (and find players who are not angry at him for playing jank).

Again, it isn't about stopping players with malicious intent, it's about matching expectations. When we get the profiles, ranking system, etc. we can easily revisit this into something that makes more sense later.

In other words: I don't think we should withdraw implement lobby rooms just because we don't have a ranking system or matchmaking yet. That's backwards.

@zaroth
Copy link
Collaborator Author

zaroth commented Feb 12, 2016

The rooms could also be easily named Public/Private, so we don't have the main lobby littered with 4-5 private games waiting for their partner at any time.

@mtgred
Copy link
Owner

mtgred commented Feb 14, 2016

I'm testing your branch. Game don't seem to appear in the game list. Can you have a look at it?

screen shot 2016-02-14 at 14 08 27

@zaroth
Copy link
Collaborator Author

zaroth commented Feb 14, 2016

@mtgred I just tested it, it works fine here. From the symptoms you're having in the screenshot it looks like server.coffee wasn't restarted - it needs to recognize the new room field in every game data structure. Please try again and make sure to restart the server after the changes are pulled.

@mtgred
Copy link
Owner

mtgred commented Feb 14, 2016

👍

mtgred added a commit that referenced this pull request Feb 14, 2016
Split game lobby into casual/competitive rooms
@mtgred mtgred merged commit e94077e into mtgred:master Feb 14, 2016
@zaroth zaroth deleted the newlobby branch February 14, 2016 22:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants